package org.glut.backend.domain;

import com.baomidou.mybatisplus.annotation.*;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;

/**
 * 评论表
 *
 * @author fengyue
 * @since 2025-08-05 15:14
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("comment")
public class Comment {

    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)

    private Long id;

    /**
     * 评论内容
     */
    private String content;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 用户名
     */
    private String username;

    /**
     * 父评论ID（0表示一级评论）
     */
    private Long parentId;

    /**
     * 关联的目标ID（如文章ID）
     */
    private Long targetId;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    @TableField(exist = false)
    private String formatCreateTime;
    @TableField(exist = false)
    private List<Comment> children;
}
